/*
 * @Author: Stefan Liu
 * @Date: 2019-08-24 13:37:13
 * @LastEditTime: 2019-08-24 16:54:36
 * @Description: set the way save auth
 */

// use localStorage to store the authority info, which might be sent from server in actual project.
export function getAuthority (str) {
  // return localStorage.getItem('vue-authority') || ['admin', 'user'];
  const authorityString =
    typeof str === 'undefined' ? localStorage.getItem('vue-authority') : str
  // authorityString could be admin, "admin", ["admin"]
  let authority
  try {
    authority = JSON.parse(authorityString)
  } catch (e) {
    authority = authorityString
  }
  if (typeof authority === 'string') {
    return [authority]
  }
  return authority
}

export function setAuthority (authority) {
  const proAuthority = typeof authority === 'string' ? [authority] : authority
  return localStorage.setItem('vue-authority', JSON.stringify(proAuthority))
}
